This application relates to terminal servers.
A conventional terminal server is a device that includes one or more communication ports to communicate with one or more devices. An example terminal server is a serial concentrator that communicates serial communication port traffic over one or more connections (e.g., a TCP/IP connection, TELNET connection, secure shell connection, or a connection in accordance with another communication protocol). The terminal server can, for example, be connected to one or more server computers through the communication ports. The server computers, in turn, can be connected to a network, such as a wide area network (WAN) or the Internet, to facilitate in-band communication and management. In the event a server computer malfunctions and is not responding to in-band communications, out-of-band management and troubleshooting can be facilitated through the serial communication port.
A terminal server can also be connected to an associated agent through one of the communication ports. For example, a power agent device can provide power to the server computers connected to the terminal server. The power agent can likewise be connected to the terminal sever and controlled through the terminal server to facilitate power functions, e.g., cycling power to a server computer, shutting power off for one or more server computers, etc.
The associated agent device can be controlled through a terminal server control environment. Typically, however, the agent device is controlled according a proprietary control scheme, and thus the terminal server does not readily facilitate control of third-party agent devices of different types. Additionally, proprietary control schemes do not facilitate flexibility in the control process. For example, if a power agent device cycles power to a server computer, it may be desirable to execute additional processes to log the power cycle and ensure that the server computer has recovered, e.g., log the date and time of the power cycle and execute an in-band handshake process to ensure that the server computer has recovered. Such additional processes, however, are not readily integrated with a conventional agent device command.